2025-07-16, 01:55
  #1
Medlem
Kör 90% Windows, 10% Linux (för webserver), och har hittills använt Powershell mest, för uppgifter som i huvudsak handlar om filhantering, fil-processning, automatiserade processer eller systemuppgifter, beräkningar, och general purpose m.m. Jag använder GUI element enbart i bemärkelsen att fråga användaren efter indata (dialogrutor, "välj fil/mapp" dialog, sammanställningsrapport osv). Det handlar mest om privat bruk, inget direkt teamwork.

Jag har behovet av att scripting/programmeringspråket ska vara "tidlöst", dvs inte försvinna eller uppdateras till nya revisioner över tid. Jag vill kunna använda min investering av att lära mig det, och inte upptäcka att syntaxen eller stödet ballar ur om 3-4 år osv.
Jag är inte programmerare till mitt DNA, så jag kommer inte att "växa" som utvecklare i någon enorm proportion, utan kommer endast bli bättre på att använda processerna efter beskrivningen ovan.

Vänner och bekanta har rekommenderat mig att titta på Python istället för Powershell. Jag kan enstaka Python sen innan, men inte använt det för detta.

Det har sagts mig att Python är mer lättläst och förlåtande kod, bättre på text- och värdehantering som txt/json/cvs, har bättre ekosystem (pandas etc) och även lättare att underhålla. Sägs även att mängden färdiga script och funktioner man kan hämta och implementera från internet är långt fler, än för Powershell. Och Python behöver sällan portas för användning på andra operativsystem.

Fördelen med Powershell - inom dom användningsområden jag normalt använder detta till - har beskrivits som mer direkt integration med Windows för en del uppgifter (API, .NET och COM) samt för Windows GUI element. Jag är dock hyfsat less på att krångla med Powershell säkerhetspolicies for olika delar av filsystemet eller services.

Så det låter som Python kan vara ett bättre alternativ för mig?

Jag har även ett långt gillande av VB, mycket pga dess verbosa syntax som jag tycker är väldans lättläst. Men VB.NET är kanske mer bängligt i den bemärkelsen, jämfört med Python och Powershell?
Jag frågar inte ifrån perspektivet av vilken av dessa tre som "kan göra det dom andra inte kan". Jag frågar utifrån perspektivet av vilket som är mest direkt och lättanvänt, för det jag behöver?

Vilket skulle ni generellt rekommendera för mig, gällande användningen jag beskriver?
Och gärna några ord om varför?
__________________
Senast redigerad av Otis85 2025-07-16 kl. 02:05.
Citera
2025-07-16, 10:02
  #2
Medlem
Ska du utföra enkla uppgifter genom kommando för att t.ex. flytta filer eller kolla din hårddisk etc. är operativsystemets skriptspråk lättare och lämpligare att använda, dvs. Powershell för Windows och Bash för Linux.

Ska du däremot utgöra automatiserade uppgifter som applikation eller större skript rekommenderar jag Python för att det dels är obundet för operativsystem (det fastän Linuxdistar till 60% drivs av Python). Python har inte ändrat sin syntax på 10 år, så det språket är stabilt, tillskillnad från .NET och alla avkrokar som tillhör MS.
Citera
2025-07-16, 13:28
  #3
Avslutad
Windows GUI... Python? Njae.

C# är stabilt och får visserligen en del nya features som godis för utvecklare, men Microsoft har INTE som vana att paja det som är gammalt bara för att mycket nytt utvecklas.

Ett förslag är att du lägger några veckor i maklig takt på att ta igenom gratis C# certifiering, det har du nytta av hur du än gör, och du kan ta ett mer informerat beslut om hur du ska göra framledes. Kursen är rätt trevlig.
https://www.freecodecamp.org/learn/foundational-c-sharp-with-microsoft/

(Själva kursen körs på learn.microsoft.com , certet får du via freecodecamp)

Utifrån vad du skriver så kommer du ha stora fördelar att köra ett språk som är helt hemma i Microsofts ekosystem.

Med det sagt, Python är bra, jag föredrar det för att skriva enklare databehandling och lite allt möjligt.

Hade du sagt 90% Linux, 10% windows hade jag sagt Python. Men nu är C# och .NET rätt behagligt att jobba med i Linux också, så är det 90% Windows 10% Linux så tycker jag det är självklart.
__________________
Senast redigerad av blipdeductstereo 2025-07-16 kl. 13:33.
Citera
2025-07-16, 20:50
  #4
Medlem
bithaxs avatar
Tycker python är bra för att få saker gjorda snabbt. Men inte för gui. Finns väl wx-python och liknande. Har för mig att det mesta är ganska pilligt att använda. Men kan ju ha förbättrats de senaste åren.

Man kan ju be AI generera det mesta nu för tiden, så att det är mycket boilerplate spelar ju mindre roll då.
Citera
2025-07-17, 12:15
  #5
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av Otis85
Kör 90% Windows, 10% Linux (för webserver), och har hittills använt Powershell mest, för uppgifter som i huvudsak handlar om filhantering, fil-processning, automatiserade processer eller systemuppgifter, beräkningar, och general purpose m.m. Jag använder GUI element enbart i bemärkelsen att fråga användaren efter indata (dialogrutor, "välj fil/mapp" dialog, sammanställningsrapport osv). Det handlar mest om privat bruk, inget direkt teamwork.

Jag har behovet av att scripting/programmeringspråket ska vara "tidlöst", dvs inte försvinna eller uppdateras till nya revisioner över tid. Jag vill kunna använda min investering av att lära mig det, och inte upptäcka att syntaxen eller stödet ballar ur om 3-4 år osv.
Jag är inte programmerare till mitt DNA, så jag kommer inte att "växa" som utvecklare i någon enorm proportion, utan kommer endast bli bättre på att använda processerna efter beskrivningen ovan.

Vänner och bekanta har rekommenderat mig att titta på Python istället för Powershell. Jag kan enstaka Python sen innan, men inte använt det för detta.

Det har sagts mig att Python är mer lättläst och förlåtande kod, bättre på text- och värdehantering som txt/json/cvs, har bättre ekosystem (pandas etc) och även lättare att underhålla. Sägs även att mängden färdiga script och funktioner man kan hämta och implementera från internet är långt fler, än för Powershell. Och Python behöver sällan portas för användning på andra operativsystem.

Fördelen med Powershell - inom dom användningsområden jag normalt använder detta till - har beskrivits som mer direkt integration med Windows för en del uppgifter (API, .NET och COM) samt för Windows GUI element. Jag är dock hyfsat less på att krångla med Powershell säkerhetspolicies for olika delar av filsystemet eller services.

Så det låter som Python kan vara ett bättre alternativ för mig?

Jag har även ett långt gillande av VB, mycket pga dess verbosa syntax som jag tycker är väldans lättläst. Men VB.NET är kanske mer bängligt i den bemärkelsen, jämfört med Python och Powershell?
Jag frågar inte ifrån perspektivet av vilken av dessa tre som "kan göra det dom andra inte kan". Jag frågar utifrån perspektivet av vilket som är mest direkt och lättanvänt, för det jag behöver?

Vilket skulle ni generellt rekommendera för mig, gällande användningen jag beskriver?
Och gärna några ord om varför?
Skippa VB.net.
Powershell är som sagt bättre integrerat med Windows.
Att lära sig Python enbart för att slippa säkerhetspolicies låter inte som en bra idé.
Däremot är Pythons styrka plattformsoberoende.
Powershell kommer inte försvinna i närtid så det är ingen anledning att byta.
Citera
2025-07-17, 12:17
  #6
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av blipdeductstereo
C# är stabilt och får visserligen en del nya features som godis för utvecklare, men Microsoft har INTE som vana att paja det som är gammalt bara för att mycket nytt utvecklas.
Finns ingen anledning att hålla på med C# istället för Powershell, med TS angivna user case. Skripting duger bra.
Citera
2025-07-17, 13:12
  #7
Avslutad
Citat:
Ursprungligen postat av Enterprise
Finns ingen anledning att hålla på med C# istället för Powershell, med TS angivna user case. Skripting duger bra.

Tror du har rätt, mitt svar blev lite för mycket ett förslag på vad ts ska prova på för nytt.

Såg att ts nämnde pandas, det är nice, sånt man kan göra med pandas gör gärna att man kör python.
__________________
Senast redigerad av blipdeductstereo 2025-07-17 kl. 13:14.
Citera
2025-07-19, 02:14
  #8
Medlem
Du skulle ha bra nytta av att lära dig Python.
Citera
2025-11-04, 13:59
  #9
Medlem
Segelmorots avatar
Ett praktiskt expel på fördelarna med py v Powershell.

Scenario:
Du har en CSV-fil med tusentals rader, och du vill ta fram medelvärdet av en viss kolumn, filtrera på ett villkor och skriva resultatet till en ny fil.

Py
Kod:
# scripts/process_data.py
import pandas as pd

df = pd.read_csv("data.csv")
filtered = df[df["Age"] > 30]
mean_salary = filtered["Salary"].mean()
filtered.to_csv("filtered.csv", index=False)
print(f"Medellön: {mean_salary:.2f}")

Powershell:
Kod:
$csv = Import-Csv "data.csv"
$filtered = $csv | Where-Object { [int]$_.Age -gt 30 }
$mean = ($filtered | Measure-Object -Property Salary -Average).Average
$filtered | Export-Csv "filtered.csv" -NoTypeInformation
Write-Output "Medellön: $mean"
Citera
2025-11-04, 15:58
  #10
Medlem
Hrass avatar
Menar du verkligen "VB.net" och inte VBScript? Oavsett är väl båda två urgamla
Citera
2025-11-05, 21:11
  #11
Medlem
Tjuren-Ferdinands avatar
Kör på python. Lätt att förstå och kan användas till mycket. VB syntax är också lätt men mindre flexibelt än python och inte lika platformsoberoende.
Citera
2025-11-05, 21:30
  #12
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av Segelmorot
Ett praktiskt expel på fördelarna med py v Powershell.

Scenario:
Du har en CSV-fil med tusentals rader, och du vill ta fram medelvärdet av en viss kolumn, filtrera på ett villkor och skriva resultatet till en ny fil.

Py
Kod:
# scripts/process_data.py
import pandas as pd

df = pd.read_csv("data.csv")
filtered = df[df["Age"] > 30]
mean_salary = filtered["Salary"].mean()
filtered.to_csv("filtered.csv", index=False)
print(f"Medellön: {mean_salary:.2f}")

Powershell:
Kod:
$csv = Import-Csv "data.csv"
$filtered = $csv | Where-Object { [int]$_.Age -gt 30 }
$mean = ($filtered | Measure-Object -Property Salary -Average).Average
$filtered | Export-Csv "filtered.csv" -NoTypeInformation
Write-Output "Medellön: $mean"
Ärligt talat ingen stor fördel för Python. En vanesak helt enkelt.
Citera
  • 1
  • 2

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in