Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »

Welcome to Software Development on Codidact!

Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.

Posts by Karl Knechtel‭

45 posts
87%
+12 −0
Q&A What are statements and expressions?

When I have tried to read technical explanations of the syntax rules for programming languages, and when I am trying to decipher error messages, I often encounter the terms expression and statement...

4 answers  ·  posted 9mo ago by Karl Knechtel‭  ·  last activity 9mo ago by Dirk Herrmann‭

84%
+9 −0
Q&A How can I build a string from smaller pieces?

Before attempting this, make sure it makes sense in context. In a few particular situations, it would be better to take a different approach rather than using the normal tools for composing or f...

posted 9mo ago by Karl Knechtel‭  ·  edited 9mo ago by Karl Knechtel‭

Answer
84%
+9 −0
Meta On self-answered questions, is it inappropriate to mark my own answer "Works for me" immediately?

Would it discourage others from posting answers, if they saw that a question had an answer with a "works for me" indication applied immediately? (More so than just seeing an immediate, comprehensiv...

3 answers  ·  posted 9mo ago by Karl Knechtel‭  ·  last activity 8mo ago by matthewsnyder‭

84%
+9 −0
Q&A Understanding mutable default arguments in Python

Consider this code example: def example(param=[]): param.append('value') print(param) When example is repeatedly called with an existing list, it repeatedly appends to the list, as ...

4 answers  ·  posted 8mo ago by Karl Knechtel‭  ·  last activity 5mo ago by matthewsnyder‭

83%
+8 −0
Q&A Git-ignoring files with special characters in their names, especially newlines

My actual motivation is to understand the semantics of the .gitignore file syntax in precise detail, for a program which is expected to emulate them as accurately as possible. However, while coming...

1 answer  ·  posted 6mo ago by Karl Knechtel‭  ·  last activity 6mo ago by Peter Taylor‭

Question git linux gitignore
81%
+7 −0
Q&A Why are list comprehensions written differently if you use `else`?

These two uses of if are different The if at the end of a list comprehension syntax: [num for num in hand if num != 11] is a filter; its purpose is to decide whether or not the resulting list ...

posted 7mo ago by Karl Knechtel‭  ·  edited 5mo ago by Karl Knechtel‭

Answer
80%
+6 −0
Q&A How can I properly type-hint methods in different files that would lead to circular imports?

Import modules rather than names first to avoid a circular reference in the import statements; then use forward declarations, as before, to avoid a circular reference in the type annotations - like...

posted 9mo ago by Karl Knechtel‭  ·  edited 9mo ago by Karl Knechtel‭

Answer
80%
+6 −0
Meta How should I organize material about text encoding in Python into questions?

I want to write one or more self-answered Q&As on the topic of text encoding in Python, to serve as canonicals and preempt future lower-quality questions. I can think of the following things th...

3 answers  ·  posted 8mo ago by Karl Knechtel‭  ·  last activity 8mo ago by Karl Knechtel‭

80%
+6 −0
Q&A Understanding mutable default arguments in Python

Terminology "Mutable default argument" means exactly what the individual words would suggest: it's an argument which is supplied as the default value for that parameter, which also is mutable. To ...

posted 8mo ago by Karl Knechtel‭  ·  edited 8mo ago by Karl Knechtel‭

Answer
77%
+5 −0
Meta How can we grow this community?

Never Too Late Due to, shall we say, recent AI-related hallucinations, pretty much everything that was possible PR-wise in 2019 is possible for this site again. People are leaving Stack Overflow a...

posted 9mo ago by Karl Knechtel‭

Answer
77%
+5 −0
Meta Do we want a wiki (or similar) alongside Q&A?

I think the framing of this question (and the prior discussion) is wrong, and I think that conditions have evolved since it was originally asked - in particular, we can now see how articles have tu...

posted 9mo ago by Karl Knechtel‭  ·  edited 9mo ago by Karl Knechtel‭

Answer
77%
+5 −0
Meta What categories could we benefit from having?

So far, existing Meta discussion seems to have at least hinted at the possibility of using separate categories here: To shuffle closed questions out of the way (globally for Codidact) (also) Fo...

1 answer  ·  posted 8mo ago by Karl Knechtel‭  ·  last activity 8mo ago by Lundin‭

77%
+5 −0
Q&A Does Python have a "ternary operator" (conditional evaluation operator like "?:" in other languages)?

How to do it Yes, Python has an equivalent operator. However, it's spelled with keywords rather than punctuation, and it uses a different order of operands. It looks like: condition_value if some...

posted 5mo ago by Karl Knechtel‭

Answer
75%
+4 −0
Q&A How and where does Python code start running? How can I control that?

Starting up Python There are several key ways to use the python command from the command line: python by itself starts a REPL that allows typing in and running Python code on the fly, one sta...

posted 19d ago by Karl Knechtel‭

Answer
75%
+4 −0
Meta Don't close questions for lack of detail/confusion

No. Terms like "too generic", "unclear", "too broad", "off topic" are absolutely not euphemisms for "stupid question, go away". They mean what they say; and when they are used Somewhere Else, mult...

posted 2mo ago by Karl Knechtel‭

Answer
75%
+4 −0
Q&A What does "namespace" mean?

A well-known easter egg in Python displays some ideas about writing good Python code, credited to Tim Peters (one of the core developers). This question is about the last: Namespaces are one hon...

2 answers  ·  posted 5mo ago by Karl Knechtel‭  ·  last activity 5mo ago by Olin Lathrop‭

75%
+4 −0
Q&A Understanding mutable default arguments in Python

Workarounds Avoiding mutation Because problems are only caused by actually mutating the default argument, the simplest way to avoid problems is to... not do that. Pythonic code obeys command-quer...

posted 8mo ago by Karl Knechtel‭  ·  edited 5mo ago by Karl Knechtel‭

Answer
75%
+4 −0
Meta Should self-answered Q&A use separate answers for different techniques/approaches (even if there's a caveat that applies overall)?

Looking back at my own Q&A How can I build a string from smaller pieces?, the answer is incredibly long. I'm essentially showing five different ways to solve the problem - because they all exis...

2 answers  ·  posted 8mo ago by Karl Knechtel‭  ·  last activity 8mo ago by Lundin‭

75%
+4 −0
Q&A How can I schedule a later task in Python?

Use at to schedule the command, using subprocess from Python to invoke at. It doesn't even require shell=True. For example: import shlex, subprocess subprocess.run( # `at` command to run n...

posted 9mo ago by Karl Knechtel‭  ·  edited 8mo ago by Karl Knechtel‭

Answer
71%
+3 −0
Q&A Understanding mutable default arguments in Python

Possible justifications It may make sense to use a mutable default argument in the following situations: For simplicity Consider for example an argument that should be some kind of mapping, wher...

posted 8mo ago by Karl Knechtel‭

Answer
71%
+3 −0
Meta Are questions about (abstract) algorithms and datastructures considered on-topic?

As the author, this is my defense. Design and modeling are on-topic The site topicality documentation explicitly includes "Software design, architecture, or modeling" as on topic. There doesn't s...

posted 8mo ago by Karl Knechtel‭

Answer
71%
+3 −0
Q&A How to troubleshoot ModuleNotFoundError?

Root cause ModuleNotFoundError is a kind of ImportError. It occurs when Python code tries to use an absolute import, but can't find the named module - just as the name suggests. (Failed relative i...

posted 4mo ago by Karl Knechtel‭  ·  edited 4mo ago by Karl Knechtel‭

Answer
71%
+3 −0
Q&A How can I manage multiple consecutive strings in a buffer (and add more later)?

The fundamental problem here is that it is already ambiguous where the "end" of the data in the buffer is. Strings can be empty (have zero length as reported by strlen); as such, buffer could equal...

posted 2mo ago by Karl Knechtel‭

Answer
71%
+3 −0
Q&A How and where does Python code start running? How can I control that?

Suppose I have some code in a file myscript.py like: def my_function(): print("Test") What steps do I need to take in order to make my_function run? That is to say: how do I get Python to ...

3 answers  ·  posted 19d ago by Karl Knechtel‭  ·  last activity 3h ago by walrusplink‭

71%
+3 −0
Q&A Automatically install all packages needed

A compromise exists between automatically inferring package names (unreliable and potentially dangerous) and writing out an explicit separate requirements.txt file: script-running tools such as pip...

posted 9mo ago by Karl Knechtel‭  ·  edited 9mo ago by Karl Knechtel‭

Answer